﻿namespace TestTool.Proxies.Onvif
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Xml;
    using System.Xml.Serialization;

    [Serializable, GeneratedCode("svcutil", "3.0.4506.2152"), DesignerCategory("code"), DebuggerStepThrough, XmlType(TypeName="NetworkCapabilities", Namespace="http://www.onvif.org/ver10/schema")]
    public class NetworkCapabilities1
    {
        private XmlAttribute[] anyAttrField;
        private bool dynDNSField;
        private bool dynDNSFieldSpecified;
        private NetworkCapabilitiesExtension extensionField;
        private bool iPFilterField;
        private bool iPFilterFieldSpecified;
        private bool iPVersion6Field;
        private bool iPVersion6FieldSpecified;
        private bool zeroConfigurationField;
        private bool zeroConfigurationFieldSpecified;

        [XmlAnyAttribute]
        public XmlAttribute[] AnyAttr
        {
            get
            {
                return this.anyAttrField;
            }
            set
            {
                this.anyAttrField = value;
            }
        }

        [XmlElement(Order=3)]
        public bool DynDNS
        {
            get
            {
                return this.dynDNSField;
            }
            set
            {
                this.dynDNSField = value;
            }
        }

        [XmlIgnore]
        public bool DynDNSSpecified
        {
            get
            {
                return this.dynDNSFieldSpecified;
            }
            set
            {
                this.dynDNSFieldSpecified = value;
            }
        }

        [XmlElement(Order=4)]
        public NetworkCapabilitiesExtension Extension
        {
            get
            {
                return this.extensionField;
            }
            set
            {
                this.extensionField = value;
            }
        }

        [XmlElement(Order=0)]
        public bool IPFilter
        {
            get
            {
                return this.iPFilterField;
            }
            set
            {
                this.iPFilterField = value;
            }
        }

        [XmlIgnore]
        public bool IPFilterSpecified
        {
            get
            {
                return this.iPFilterFieldSpecified;
            }
            set
            {
                this.iPFilterFieldSpecified = value;
            }
        }

        [XmlElement(Order=2)]
        public bool IPVersion6
        {
            get
            {
                return this.iPVersion6Field;
            }
            set
            {
                this.iPVersion6Field = value;
            }
        }

        [XmlIgnore]
        public bool IPVersion6Specified
        {
            get
            {
                return this.iPVersion6FieldSpecified;
            }
            set
            {
                this.iPVersion6FieldSpecified = value;
            }
        }

        [XmlElement(Order=1)]
        public bool ZeroConfiguration
        {
            get
            {
                return this.zeroConfigurationField;
            }
            set
            {
                this.zeroConfigurationField = value;
            }
        }

        [XmlIgnore]
        public bool ZeroConfigurationSpecified
        {
            get
            {
                return this.zeroConfigurationFieldSpecified;
            }
            set
            {
                this.zeroConfigurationFieldSpecified = value;
            }
        }
    }
}

